[Script Pascal] Verificando quantos Caracteres por Segundo tem a legenda
Publicado por rafael farias novaes 26/01/2009
[ Hits: 7.201 ]
Homepage: http://www.vivaolinux.com.br/perfil/verPerfil.php?login=bfmano
Seguindo a linha de garimpagem do Pix, estou pesquisando na internet alguns scripts pascal que facilitam nossa vida.
Este gera um relatório dizendo se sua legenda está nos "padrões" de 25 caracteres exibidos em 1 segundo (tempo-limite que a maioria das pessoas leva pra ler a legenda). OBS: o padrão oficial para dvd's comerciais e filmes de cinema é de 13 a 18 cps em média.
Salve este código com o nome ShowCPS.pas na pasta PascalScripts do Subtitle Workshop
// Made by Buzcatcher program ShowCPS; // --------------------------------------------- const cpsreport = 'C:\cps_report.txt'; CRLF = ''#13''#10; Rsep = ' | '; var i, n, p : Integer; duration, sublength, cps : Integer; subtxt, report : String; Ms : TmemoryStream; begin Ms := TmemoryStream.Create; n := GetSubtitleCount-1; for i := 0 to n do begin subtxt := GetSubtitleText(i); sublength := length(subtxt); p := pos(''#13''#10, subtxt); if (p>0) then sublength := sublength - 2; duration := GetSubtitleFinalTime(i) - GetSubtitleInitialTime(i); cps := round((sublength * 1000)/ duration); report := IntToStr(i+1) + Rsep + IntToStr(sublength) + ' Characters' + Rsep + IntToStr(duration) + ' duration(ms)' + Rsep + '==> ' + IntToStr(cps) + ' Char/sec.' if (cps > 25) then report := report + Rsep + 'LEGENDA MUITO RAPIDA' report := report + CRLF Ms.Write(report, length(report)); try Ms.SaveToFile(cpsreport); except MsgBox('Couldn''t write to file!', '&Ok', '', '', $20); end; end; Ms.Free; MsgBox('Report saved in C:\cps_report.txt', '&Ok', '', '', $20); end.
Visualizador de imagens feito no Lazarus
ZCodEdit - Editor de textos com sintaxe HTML e Pascal
Funções de Manipulação de Arquivos Pascal
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Atualizar Debian Online de uma Versão para outra
Máquina perereca - até onde é possível o uso de Linux?
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Debian 13 Trixie para Iniciantes
Convertendo pacotes DEB que usam ZSTD (Padrão Novo) para XZ (Padrão Antigo)
O que você está ouvindo agora? [2] (210)
Debian 13 "trixie&... lançado! (43)
baschrc customizado pegeui vários. (1)
eu tive uma idéia, mas mais privada sobre o assunto de mu online e ser... (7)